約 3,408,190 件
https://w.atwiki.jp/kgh07155/pages/17.html
Tips - Delphi 基本的にDelphi 6 Personalの個人メモ。ヴァージョン違うと使えないかも。 便利な関数 よく使うキーコード キー入力を制限する メニューバーとツールバーで共通の処理をしたい 文字列を数値に変換する JPEG画像を扱う 指定URLへのリンクを埋め込む Aboutフォーム表示 DialogのOKかCancelかで処理を分ける 複数行の文字列を一行化する 複数行テキストエディタで、手動でカーソルを最下行へ移動 RichEditで文字列の書式を部分的に変えたい 便利な関数 Trunc(x) x の小数点以下を切捨てる Trunc(x + 0.5) x の小数点以下を四捨五入 ExtractFilePath(Application.ExeName) 実行中のアプリのディレクトリを取得 ExtractFilePath(ParamStr(0)) よく使うキーコード #00 キー入力無視 #08 BackSpace/Delete #13 Enter 改行 キー入力を制限する 制限したいコンポーネントのOnKeyPressイベントに、特定のキー以外を無視するルーチンを設定する。 procedure TForm1.KeyPressLimit(Sender TObject; var Key Char); begin if not (Key in [ 0 .. 9 , #08]) then // 入力キーが 0 ~ 9 ,BackSpace/Delete 以外なら begin beep; // ビープ音による警告 Key = #0; // 入力を無視 end; end; メニューバーとツールバーで共通の処理をしたい こちらのページを参照。 文字列を数値に変換する StrToCurr関数を使う。 StrToInt関数を使う。 StrToIntDef関数を使う。 「10進数と16進数を示す文字列」を整数値に変換する関数。変換エラー時に返す数値を指定できるため、指定の数値が返されたときにエラー処理へ分岐できる。 Val関数を使う。整数、実数のいずれも可。 : : var STR String; FLT Single; ERR Integer; : : begin : : Val(STR, FLT, ERR); // STR → FLT ERRは変換エラー箇所(エラーがなければ0) if ERR = 0 then // 変換エラーがなければ : : else // 変換エラーがあれば : : おまけ: IntToHex関数を使うと10進数表記を16進数表記に変換できる……はずだが、Personalには実装されていないらしい。 JPEG画像を扱う Jpeg画像を扱うためのユニット「Jpeg」が標準添付されているので、pasファイルのuses節に、手入力で「Jpeg」を追加するだけ。 Jpegユニットを追加すると、Jpegデータを格納するための TJPEGImage が使えるようになり、これを経由して内部でビットマップに変換できるようになる。 : : uses Windows, ‥‥, Jpeg; : : var JPG TJPEGImage; BMP TBitmap; : : begin JPG = TJPEGImage.Create; BMP = TBitmap.Create; : : JPG.Assign(BMP); // BMP → JPG : : BMP.Assign(JPG); // JPG → BMP : : 指定URLへのリンクを埋め込む 外部アプリケーションをWindows経由でコントロールする「ShellAPI」関数群の中から、「ShellExecute」関数を使うと、指定URLを規定のブラウザで開いてくれる。 最初に、pasファイルのuses節に、手入力で「ShellAPI」を追加する。後はボタンやラベルをクリックしたときのイベントに、指定URLを呼び出すShellExecute関数を設定すればOK。 uses Windows, ‥‥, ShellAPI; procedure TForm1.Label1Click(Sender TObject); begin // ShellExecute(Handle, OPEN , http //www39.atwiki.jp/kgh07155/ , , , SW_SHOWNORMAL); // ShellExecute(NULL, OPEN , http //www39.atwiki.jp/kgh07155/ , NULL, NULL, SW_SHOWNORMAL); //どちらの書式でもOK。引数の OPEN とURL、SW_SHOWNORMALがポイント。 ShellExecute(Handle, OPEN , PChar(TLabel(Sender).Caption), , , SW_SHOWNORMAL); // URLとして指定する文字列はPChar型のみ有効。PChar(String)のように型変換すると良い。 // この例の場合、Labelに表示された文字列を引数として適宜実行する。 // つまりLabelの文字列がURLなら、自動でブラウザを起動し指定URLを呼び出す。 end; ShellExecute関数の使い方は他にもいろいろあるが、ここでは省略。 Aboutフォーム表示 ヴァージョン情報や作者URLなどを表示する「Aboutフォーム」を表示させる方法。 Aboutフォームを作成。 Aboutフォームにフォーム閉じ用のButtonオブジェクトを置き、ModalResultプロパティを mrOK に設定。 フォームを閉じるためのボタンイベントは不要。 Button.ModalResult = mrOK; // 変更の必要はないので、オブジェクト インスペクタで設定して構わない。 // ボタンが押されたことが分かれば良いので、mrNone 以外なら何でも良い。 メインフォームにAboutフォームを呼び出すイベントを追加。 procedure TMain.ViewAboutBox(Sender TObject); begin AboutBox.ShowModal; // AboutBoxは、呼び出すフォーム名。この場合、表示させたいAboutフォーム。 // ShowModalは、フォームをダイアログ表示させるメソッド。ボタンを押すとフォームを閉じ、 // 押されたボタンのModalResult(mrNone以外)を返し値にするので、 // 特にボタンイベントを設定しなくても良い。 end; DialogのOKかCancelかで処理を分ける デフォルトで準備されているDialogの場合、Executeメソッド(型はBoolean)で判定可能。 if OpenDialog.Execute then Memo1.Lines.LoadFromFile(OpenDialog1.FileName); 自前でDialogFormを作成する場合、設置したボタンにModalResultプロパティを設定し、DialogFormのModalResultプロパティの値(型はInteger)で判定(FormのModalResultプロパティは、押されたボタンのModalResultの値になる)。 ModalResultの値はTModalResult型を参照。 DialogForm.Button1.ModalResult = mrYes; DialogForm.Button2.ModalResult = mrNo; if DialogForm.ModalResult = mrYes then Memo1.Lines.LoadFromFile(DialogForm.FileName); 複数行の文字列を一行化する TStringList, TMemo, TRichEditで、複数の文字列を一行化する方法。 Sample = TStringList.Create; Sample.Add( Line0 ); Sample.Add( Line 1 ); Sample.Add( Line,2 ); Sample.Add( Line"3 ); : Textプロパティを使う。改行コード(#13#10)を区切りに一行化する。Sample.Text = Line0 #13#10 Line 1 #13#10 Line,2 #13#10 Line"3 #13#10…… CommaTextプロパティを使う。半角コンマ(,)を区切りに一行化する。行に半角コンマ(,)や半角スペース( )が入った場合は半角ダブルクォーテーション(")で行を囲み、行に半角ダブルクォーテーション(")が入る場合は半角ダブルクォーテーションを二重にする。Sample.CommaText = Line0,"Line 1","Line,2","Line""3",…… DelimitedTextプロパティを使う。CommaTextの区切り文字(,)や囲み文字(")の変更可能版。区切り文字はDelimiterプロパティで、囲み文字はQuoteCharプロパティで指定する。デフォルトではCommaTextと同じ。 複数行テキストエディタで、手動でカーソルを最下行へ移動 TMemo, TRichEditで、自動でカーソルが最下行へ移動しないときに、手動で移動させる方法。 Memo1.SelStart = Length(Memo1.Lines.Text);//キャレット位置を最後に Memo1.Perform(EM_SCROLLCARET, 0, 0); //キャレット位置までスクロール RichEditで文字列の書式を部分的に変えたい こちらのページを参照。
https://w.atwiki.jp/motorsportsaccident/pages/89.html
2004 IndycarSeries Delphi Indy 300 Round 14 - Chicagoland Speedway Race レースは終盤になり各所で順位争いが繰り広げられる中 第2ターン立ち上がりでバディ・ライス(レイホール-レターマン・レーシング) とダレン・マニング(チップ・ガナッシ・レーシング)が接触。 ライスのマシンはスピンし、車体下に空気が入った事により 大きく空中に吹き飛び横転、フェンスの直前で裏返しのまま着地した。 マニングもマシンをスピンさせてクラッシュし、両ドライバー共リタイア。 ヒヤリとしたアクシデントだったものの、2人とも無事だった。
https://w.atwiki.jp/sevenlives/pages/541.html
Object Pascal? Turbo Pascal?
https://w.atwiki.jp/alato/
Delphiの備忘録 2006/03/01作成
https://w.atwiki.jp/kgh07155/pages/28.html
作り方の基本 フォーム付きDLLの作り方 実行ファイルからDLL内フォームを制御する 作り方の基本 DLLSample.dpr(DLLのソースファイル) library DLLSample; // library はDLLであることを示す。 uses SysUtils, Classes; // Unit作成時と同様に、必要ならばユニットを追加して構わない。 {$R *.res} // ここから、DLL側が行う処理をUnit作成時と同様に記述。 // 返し値を持たない処理は procedure // 返し値を持つ処理は function // 固定値は受け渡せないので、DLL側で管理する固定値は function で返す。 function Version ShortString; stdcall; // 最後に stdcall を追加すると、Delphi以外の言語でも返し値が使えるようになる。 // ただしDelphi以外の言語で返し値を使いたい場合は、返し値の型にも注意すること。 // 例えば String はDelphi独自の型なので、PChar か ShortString を使うようにする。 begin Result = DateToStr( FileDateToDateTime(FileAge( DLLSample.dll )) ); // この場合、返し値は DLLSample.dll と言うファイルのタイムスタンプ。 end; exports Version; // 外部ファイルから呼び出せる処理を記述。 // ここに記述されない処理は、DLL内部専用処理になる。 begin end. Unit_Sample.pas(DLLを呼び出す Unit のソースファイル) unit Unit_Sample; {$R *.dfm} // ここから、DLLを呼び出すための記述。 function ver ShortString; stdcall; // 処理名や引数名は異なっても構わないが、 // 引数や返し値の型と「stdcall」の有無は、DLL側と同じにすること。 external DLLsample.dll name Version ; // external で呼び出すDLLを指定する。 // name は、DLL内部での処理名が、ここに記述した処理名と異なることを示す。 // DLL内部での処理名と、ここに記述した処理名が同じなら不要。 // また、DLL内部の処理名は常に大文字と小文字が区別されるので、 // 大文字・小文字は常に正確に記述すること。 // ここまで、DLLを呼び出すための記述。 procedure TForm1.FormCreate(Sender TObject); begin self.Caption = ver; end; end. フォーム付きDLLの作り方 DLLSample.dpr(DLLのソースファイル) library DLLSample; uses Windows, // 呼び出し元の特定に使用。 Forms, // フォームの操作に使用。 Controls, // 返し値 TModalResult の操作に使用。 Unit_DLLForm in Unit_DLLForm.pas {DLLForm}; // フォームのソースファイル。 {$R *.res} function ShowDLLForm(hOwner HWND) TModalResult; stdcall; begin Application.Handle = hOwner; // 呼び出し元の情報をDLL側が受け取る。 DllForm = TDllForm.Create(Application); // DLL側でフォームを作成する。 // フォームに配置された各オブジェクトも、自動で作成される。 Result = DllForm.ShowModal; // 返し値を設定。 DllForm.Free; // DLL側で作成したフォームを破棄。 Application.Handle = 0; // 呼び出し元の情報を破棄。 end; procedure ShowDLLForm2; begin DllForm = TDllForm.Create(Application); // DLL側でフォームを作成する。 DllForm.Show; // 作成したフォームを表示。 end; exports ShowDLLForm, ShowDLLForm2; begin end. Unit_DLLForm(DLLに組み込みたいフォームのソースファイル) 通常のアプリケーションと同様に作成。 このプログラムの場合、Button1を配置し、Button1.ModalResult = mrOK に設定する。 Unit_Sample.pas(DLLを呼び出す Unit のソースファイル) フォームにButton1とButton2を配置する。 unit Unit_Sample; implementation {$R *.dfm} // ここから、DLLを呼び出すための記述。 function ShowDLLForm(hOwner HWND) TModalResult; stdcall; external DLLSample.dll ; procedure ShowDLLForm2; external DLLSample.dll ; // ここまで、DLLを呼び出すための記述。 procedure TForm1.Button1Click(Sender TObject); begin ShowDLLForm(Application.Handle); // DLL側でフォームを作成した後、 // 通常のフォームのShowModalメソッドと同じ動作をして // 作成したフォームを破棄。 end; procedure TForm1.Button2Click(Sender TObject); begin ShowDLLForm2; // DLL側でフォームを作成した後、 // 作成したフォームを表示。 end; end. 実行ファイルからDLL内フォームを制御する DLL内フォームの表示/非表示を、実行ファイルのToolButtonで制御するプログラムのソース。頑張れば他の制御にも応用できるかも。 基本的な仕組みは、 実行ファイルにToolButtonを配置。 DLLフォームのソースファイルに、ToolButtonを使ったイベント処理を記述。 DLLソースファイルに、ToolButtonのイベント設定(DLLフォームのソースにイベント処理の実行部があるので、その受け渡し)と、実行ファイル→DLL内フォームへのToolButton名を受け渡す処理を記述。 DLLSample.dpr(DLLのソースファイル) library DLLSample; uses Windows, // 呼び出し元の特定に使用。 Forms, // フォームの操作に使用。 ComCtrls, // ToolButtonの特定に使用。 Unit_DLLForm in Unit_DLLForm.pas {DLLForm}; // DLLフォームのソースファイル。 {$R *.res} procedure CreateDLLForm(hOwner HWND); stdcall; // DLLフォームを作成する。 begin Application.Handle = hOwner; // DLLフォームの親アプリケーションを特定。 DllForm = TDllForm.Create(Application); // DLLフォームを作成。 end; procedure FreeDLLForm; stdcall; // DLLフォームを破棄する。 begin DLLForm.Free; // DLLフォームを破棄。 Application.Handle = 0; // DLLフォームの親アプリケーションを解放。 end; procedure SetToolBtn1(Sender TToolButton); begin // 親アプリのToolButtonとDLLフォームを連携させる。 DLLForm.ToolBtn1 = Sender; // 親アプリのToolButton名をDLLフォーム側に保存。 with Sender do // 親アプリ側のToolButton設定を変更する。 begin Style = tbsCheck; // ToolButtonをトグルスイッチ型に設定。 // ↑動作確認用。ToolButtonのプロパティを直接設定して構わない。 OnClick = DLLForm.ToolBtn1Click; // ToolButtonをクリックしたときの処理をDLLフォームで用意したものに変更。 end; end; exports // 親アプリから呼び出せる処理を設定。 CreateDLLForm, FreeDLLForm, SetToolBtn1; begin end. Unit_DLLForm(DLLに組み込みたいフォームのソースファイル) unit Unit_DLLForm; type TDLLForm = class(TForm) public ToolBtn1 TToolButton; // 親アプリのToolButtonを保存するための変数。 procedure ToolBtn1Click(Sender TObject); // 親アプリのToolButtonをクリックしたときの処理の定義。 implementation {$R *.dfm} procedure TDLLForm.ToolBtn1Click(Sender TObject); begin // 親アプリのToolButtonがクリックされたとき、 DLLForm.Visible = TToolButton(Sender).Down; end; // DLLフォームの表示/非表示は ToolButton.Downプロパティに合わせる。 procedure TDLLForm.FormClose(Sender TObject; var Action TCloseAction); begin // DLLフォームが閉じられるとき、 ToolBtn1.Down = False; end; // 親アプリのToolButtonのトグルをオフ側にする。 Unit_Sample.pas(DLLを呼び出す Unit のソースファイル) フォームにToolBar1を配置し、ToolBar1上にToolButton1を作成する。 unit Unit_Sample; implementation {$R *.dfm} // ここから、DLLを呼び出すための記述。 procedure CreateDLLForm(hOwner HWND); stdcall; external DLLSample.dll ; // procedure FreeDLLForm; stdcall; external DLLSample.dll ; procedure SetToolBtn1(Sender TToolButton); external DLLSample.dll ; // ここまで、DLLを呼び出すための記述。 procedure TForm1.FormCreate(Sender TObject); begin CreateDLLForm(Application.Handle); // DLLフォームを初期化。 SetToolBtn1(ToolButton1); // ToolButton設定を初期化。 end; procedure TForm1.FormClose(Sender TObject; var Action TCloseAction); begin FreeDLLForm; // DLLフォームを破棄。 end;
https://w.atwiki.jp/kgh07155/pages/22.html
Tips - Delphi メニューバーとツールバーで共通の処理をしたい 「ファイル(F) …… ヘルプ(H)」などと設定したメニューバーと、アイコンボタンを用意したツールバー。同じ処理をさせたいけど、どうすれば? そんなときには、Standardタブ(Delphi 6)の ActionList コンポーネントを使います。 ActionList 共通で使いたい処理を管理するコンポーネントです。ここに登録した処理をメニューバーやツールバーで呼び出す、と言う形で使います。ここに登録した処理を変更すれば、メニューバーやツールバーの処理も自動変更されます。 ImageList 複数の画像を管理するコンポーネントです。メニューやツールバーに表示されるアイコン画像を管理するために使います。 基本的な使い方 Formに配置したImageListに、アイコン画像を読み込みます。アイコン画像を表示させない場合は不要。 Formに配置したActionListに、共通で使う処理(アクション)を登録。アイコンをダブルクリックすると編集ウィンドウが出現しますので、そこからアクションを登録してください。ファイルの読み書きやクリップボードを使った編集などが標準アクションとして用意されていますが、アクションの自作もできます。アイコン画像を使う場合は、ActionListのImagesプロパティにアイコン画像を読み込んだImageListを指定してください。 メニューバーやツールバーなどのActionプロパティに、ActionListで登録したアクションを指定します。 アイコン画像を表示する場合は、メニューバーやツールバーのImagesプロパティにも、ActionListと同じImageListを指定してください。 処理動作を変更したい場合は、ActionListに登録した処理を変更してください。 使用例 メニューバーの「ファイル→ファイルを開く」と、ツールバーの「ファイルを開く」ボタンを同じ処理にしたい場合 Formに、StandardタブからMainMenuコンポーネントとActionListコンポーネント、Win32タブからImageListコンポーネントとToolBarコンポーネントを配置する。 ImageListをダブルクリックし、アイコン画像を読み込む。 ActionListを編集する。 ActionListのImagesプロパティに、アイコン画像を読み込んだImageList名を指定する。 ActionListをダブルクリックして編集する。 ツールバーの「新規アクション」ボタン右のプルダウンメニューから「標準アクションの新規追加 Ctrl+Ins」を選ぶ。 ツリー型リストが表示されるので、「ファイル」ツリーの「TFileOpen」を選ぶ。 ImageIndexプロパティに、ImageListの何番目の画像を使うかを指定する。右のプルダウンメニューから選ぶと、番号と画像が同時に表示される。アイコン画像を使わない場合は-1。 一覧にない独自の処理をしたい場合は「アクションの新規追加 Ins」を選ぶか、ツリー型リストから「(カテゴリなし)」ツリーの「TAction」を選ぶ。その後、通常のコンポーネントと同様にイベントを記述すれば良い。 MainMenuをダブルクリックして編集する。 「ファイル( F)」を作る。 「ファイル( F)」下のプルダウンメニューのActionプロパティに、ActionListのTFileOpenオブジェクト名を選ぶ。するとCaptionなどが自動で書き換わる。 アイコンを表示させたいときは、MainMenuのImagesプロパティに、アイコン画像を読み込んだImageList名を指定する。 ToolBarを編集する。 ToolBarのImagesプロパティに、アイコン画像を読み込んだImageList名を指定する。 ToolBarを右クリックして「ボタン新規作成」する。 作成したボタンのActionプロパティに、ActionListのTFileOpenオブジェクト名を選ぶ。するとCaptionなどが自動で書き換わる。 アイコンやイベント内容の変更は、ActionListのTFileOpenオブジェクトを変更すればよい。
https://w.atwiki.jp/kgh07155/pages/27.html
RichEditの装飾をプログラム制御する 装飾範囲を指定 文字色変更 文字装飾変更 フォント名指定 フォント大きさ指定 縦書き RichEditの装飾をプログラム制御する Delphiコードのみ用いたものと、Windows APIを用いたものを併記。速度はWindows APIの方が速い。 装飾範囲を指定 Delphi RichEdit1.SelStart = 2; // 開始位置 RichEdit1.SelLength = 3; // 範囲量 Windows API uses Windows, RichEdit; var ChrRng TCharRange; ChrRng.cpMin = 2; // 開始位置 ChrRng.cpMax = 2 + 3; // 終了位置 RichEdit1.Perform(EM_EXSETSEL, 0, lParam(@ChrRng)); // 範囲を選択 // SendMessage(RichEdit1.Handle, EM_EXSETSEL, 0, lParam(@ChrRng)); // 範囲を選択 文字色変更 Delphi // 事前に範囲を指定しておくこと。 RichEdit1.SelAttributes.Color = clRed; // TColor型 Windows API uses Windows, RichEdit; var ChrFmt TCharFormat; ChrFmt.cbSize = SizeOf(ChrFmt); // メモリを予約 // 事前に範囲を指定しておくこと。 ChrFmt.dwMask = CFM_COLOR; // 変更可能な書式はColorのみ ChrFmt.crTextColor = ColorToRGB(clRed); // 文字色を指定 RichEdit1.Perform(EM_SETCHARFORMAT, SCF_SELECTION, lParam(@ChrFmt)); // 変更 // SendMessage(RichEdit1.Handle, EM_SETCHARFORMAT, SCF_SELECTION, lParam(@ChrFmt)); // 変更 EM_SETCHARFORMAT は「文字の書式指定」操作を意味する。続くパラメータは「操作範囲, 書式情報」。 操作範囲の SCF_SELECTION は「事前に指定した範囲」。SCF_ALL で全範囲指定。 書式情報の lParam(@ChrFmt) は、書式設定 ChrFmt のアドレス。 文字装飾変更 Delphi // 事前に範囲を指定しておくこと。 RichEdit1.SelAttributes.Style = [fsBold, fsItaric]; // TFont.Style Windows API uses Windows, RichEdit; var ChrFmt TCharFormat; ChrFmt.cbSize = SizeOf(ChrFmt); // メモリを予約 // 事前に範囲を指定しておくこと。 ChrFmt.dwMask = CFM_BOLD + CFM_ITALIC; // 変更可能な書式はBoldとItaricのみ ChrFmt.dwEffects = CFE_BOLD + CFE_UNDERLINE; // BoldとUnderline装飾を指定 // dwMask と dwEffects の両方で指定された装飾のみ有効。 // このプログラムの場合、Boldは有効、ItaricとUnderlineは無効。 RichEdit1.Perform(EM_SETCHARFORMAT, SCF_SELECTION, lParam(@ChrFmt)); // 変更 // SendMessage(RichEdit1.Handle, EM_SETCHARFORMAT, SCF_SELECTION, lParam(@ChrFmt)); // 変更 フォント名指定 Delphi // 事前に範囲を指定しておくこと。 RichEdit1.SelAttributes.Name = MS 明朝 ; Windows API uses Windows, RichEdit; var ChrFmt TCharFormat; ChrFmt.cbSize = SizeOf(ChrFmt); // メモリを予約 // 事前に範囲を指定しておくこと。 ChrFmt.dwMask = CFM_FACE; // 変更可能な書式はフォント名のみ ChrFmt.szFaceName = MS 明朝 ; // 半角32文字まで RichEdit1.Perform(EM_SETCHARFORMAT, SCF_ALL, lParam(@ChrFmt)); // 変更 // SendMessage(RichEdit1.Handle, EM_SETCHARFORMAT, SCF_SELECTION, lParam(@ChrFmt)); // 変更 フォント大きさ指定 Delphi // 事前に範囲を指定しておくこと。 RichEdit1.SelAttributes.Size = 15; // 単位はpoint Windows API uses Windows, RichEdit; var ChrFmt TCharFormat; ChrFmt.cbSize = SizeOf(ChrFmt); // メモリを予約 // 事前に範囲を指定しておくこと。 ChrFmt.dwMask = CFM_SIZE; // 変更可能な書式はフォントサイズのみ ChrFmt.yHeight = 300; // 単位は twip(1twip=1/20point=1/1440inch) RichEdit1.Perform(EM_SETCHARFORMAT, SCF_ALL, lParam(@ChrFmt)); // 変更 // SendMessage(RichEdit1.Handle, EM_SETCHARFORMAT, SCF_SELECTION, lParam(@ChrFmt)); // 変更 縦書き 使用フォントに縦書きフォント(フォント名の前に半角@を付けたもの。「MS 明朝」の縦書きフォントは「@MS 明朝」)を指定するだけ。 ただし Windows 2000以降、RichEdit をコントロールする dll から縦書き表示機能が排除されたらしいので、2000以降は縦書きフォントの横向き表示になる(反時計回りに90度回転した状態)。縦書き表示するには、縦書き表示対応の古い dll を使うか、独自に縦書き表示を実装する必要がある。
https://w.atwiki.jp/moomingpapa/pages/4.html
Splashウインドウを作成する
https://w.atwiki.jp/yfhdlink/pages/17.html
YFHダウンロード用-IE7.0設定 【手順1】 【手順2】 【手順3】 【手順4】 【手順5】 【手順6】 【手順7】 【手順8】 【手順9】 以上で設定は終わりです。 ↓↓ダウンロードできるか確認してください。 YFHダウンロードの簡略化サイトです。 http //yfh.es.land.to/ アクセス解析
https://w.atwiki.jp/parepan/pages/94.html
ブラウザのボタンをキーボード操作で有効にする為には 画面最大化の有効・無効設定